iT邦幫忙

2025 iThome 鐵人賽

DAY 7
0
Modern Web

PHP 新手自學筆記系列 第 7

【Day7】整數+字串 (練習實作)

  • 分享至 

  • xImage
  •  

對於資料型別有了基礎的認識之後,便可以來實作自己輸出看看~

型態 說明 範例
整數 (integer) 沒有小數點的數字 $age = 18;
浮點數 (float) 有小數點的數字 $price = 99.99;
字串 (string) 文字或字元的集合 $name = "Sunny";
布林值 (boolean) 只有 truefalse $isLogin = true;
陣列 (array) 一個可以存很多值的集合 $colors = ["red", "blue"];
物件 (object) 由類別產生的物件 $car = new Car();
NULL 空值,沒有設定任何值 $data = null;

上面附上表格,以便觀看

最基本的 輸出 整數+整數

<?php
    $a=10;
    $b=20;
    echo $a + $b;//輸出30
?>

這個非常直觀,就是數字相加而已,不過這裡有個重點,就是變數在命名的時候要取有意義的名字,如果都取a,b,c,d這種沒什麼特別意義的名字,你過段時間再去看你打的程式碼,有80%你會忘記那個變數是什麼,所以最好取像 $price、$quantity 這樣的名字,但這個範例,只是基礎變數相加我就沒有特別取變數名字了~

再來試一下 整數加字串

<?php
    $a=10;
    $b="4";
    echo $a + $b;//輸出14
?>

我原本以為會出錯,結果輸出是 14。查資料後才知道,PHP 會幫你自動把字串轉成數字(隱形型別轉換),像這個變數b它定義的是字串4,不是數字4哦,可是輸出的時候 把數字10和字串4相加的時候,php會覺得你這個字串4很有可能就是數字4,所以就幫你自動轉換了,但僅限於輸出那行,它本質還是字串。會這麼做的原因根本是+這個運算子是算數運算子,所以才會幫你轉換成整數

簡單來說就是 : 運算子 + 是數值運算,只會嘗試轉換字串成數字,不會做字串連接(字串連接用 .

再來試另一種 如果字串不是數字呢

<?php
    $a = 10;
    $b = "sunn";
    echo $a + $b; // 輸出 10,並且會有警告
?>

完整輸出:
Warning: A non-numeric value encountered in C:\Users\LEYAN003\Desktop\html\index.php on line 4
10

這個會跑出error和10是因為,sunn是一個字串,它沒辦法轉換成數字,php會把那個字串當成0並給一個警告,然後10+0=10 這就是輸出。

今天就先這樣,明天在來試試看陣列和布林~


上一篇
【Day 6】運算子符號詳細筆記
下一篇
【Day 8】陣列+布林 (練習實作)
系列文
PHP 新手自學筆記10
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言